package two;
class ListNode {
    ListNode next;
    int val;
}

public class A022 {

    /**
     * 相交链表
     * @param head
     * @return
     */

    public int sizeNode(ListNode head) {
        int sz = 0;
        ListNode cur = head;
        while(cur!=null) {
            sz++;
            cur = cur.next;
        }
        return sz;
    }
    public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
        int a = sizeNode(headA);
        int b = sizeNode(headB);
        if(a>b) {
            for(int i=0;i<a-b;i++) {
                headA = headA.next;
            }
        }else {
            for(int i=0;i<b-a;i++) {
                headB = headB.next;
            }

        }
        while(headA!=null && headA!=null) {
            if(headA == headB) {
                return headA;
            }
            headA = headA.next;
            headB = headB.next;
        }
        return null;
    }
}
